IMPORT ALL THE LIBRARIES¶

In [1]:
import pandas as pd
import numpy as np
import seaborn as sns
import plotly.express as px

READ THE DATASET¶

In [55]:
df = pd.read_csv("dataset.csv")
In [56]:
df
Out[56]:
VIN (1-10) County City State Postal Code Model Year Make Model Electric Vehicle Type Clean Alternative Fuel Vehicle (CAFV) Eligibility Electric Range Base MSRP Legislative District DOL Vehicle ID Vehicle Location Electric Utility 2020 Census Tract
0 JTMEB3FV6N Monroe Key West FL 33040 2022 TOYOTA RAV4 PRIME Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 42 0 NaN 198968248 POINT (-81.80023 24.5545) NaN 12087972100
1 1G1RD6E45D Clark Laughlin NV 89029 2013 CHEVROLET VOLT Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 NaN 5204412 POINT (-114.57245 35.16815) NaN 32003005702
2 JN1AZ0CP8B Yakima Yakima WA 98901 2011 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 73 0 15.0 218972519 POINT (-120.50721 46.60448) PACIFICORP 53077001602
3 1G1FW6S08H Skagit Concrete WA 98237 2017 CHEVROLET BOLT EV Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 238 0 39.0 186750406 POINT (-121.7515 48.53892) PUGET SOUND ENERGY INC 53057951101
4 3FA6P0SU1K Snohomish Everett WA 98201 2019 FORD FUSION Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 38.0 2006714 POINT (-122.20596 47.97659) PUGET SOUND ENERGY INC 53061041500
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
112629 7SAYGDEF2N King Duvall WA 98019 2022 TESLA MODEL Y Battery Electric Vehicle (BEV) Eligibility unknown as battery range has not b... 0 0 45.0 217955265 POINT (-121.98609 47.74068) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032401
112630 1N4BZ1CP7K San Juan Friday Harbor WA 98250 2019 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 150 0 40.0 103663227 POINT (-123.01648 48.53448) BONNEVILLE POWER ADMINISTRATION||ORCAS POWER &... 53055960301
112631 1FMCU0KZ4N King Vashon WA 98070 2022 FORD ESCAPE Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 34.0 193878387 POINT (-122.4573 47.44929) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033027702
112632 KNDCD3LD4J King Covington WA 98042 2018 KIA NIRO Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 47.0 125039043 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032007
112633 YV4BR0CL8N King Covington WA 98042 2022 VOLVO XC90 Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 18 0 47.0 194673692 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032005

112634 rows × 17 columns

In [57]:
df.head()
Out[57]:
VIN (1-10) County City State Postal Code Model Year Make Model Electric Vehicle Type Clean Alternative Fuel Vehicle (CAFV) Eligibility Electric Range Base MSRP Legislative District DOL Vehicle ID Vehicle Location Electric Utility 2020 Census Tract
0 JTMEB3FV6N Monroe Key West FL 33040 2022 TOYOTA RAV4 PRIME Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 42 0 NaN 198968248 POINT (-81.80023 24.5545) NaN 12087972100
1 1G1RD6E45D Clark Laughlin NV 89029 2013 CHEVROLET VOLT Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 NaN 5204412 POINT (-114.57245 35.16815) NaN 32003005702
2 JN1AZ0CP8B Yakima Yakima WA 98901 2011 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 73 0 15.0 218972519 POINT (-120.50721 46.60448) PACIFICORP 53077001602
3 1G1FW6S08H Skagit Concrete WA 98237 2017 CHEVROLET BOLT EV Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 238 0 39.0 186750406 POINT (-121.7515 48.53892) PUGET SOUND ENERGY INC 53057951101
4 3FA6P0SU1K Snohomish Everett WA 98201 2019 FORD FUSION Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 38.0 2006714 POINT (-122.20596 47.97659) PUGET SOUND ENERGY INC 53061041500
In [58]:
df.shape
Out[58]:
(112634, 17)
In [59]:
df.tail()
Out[59]:
VIN (1-10) County City State Postal Code Model Year Make Model Electric Vehicle Type Clean Alternative Fuel Vehicle (CAFV) Eligibility Electric Range Base MSRP Legislative District DOL Vehicle ID Vehicle Location Electric Utility 2020 Census Tract
112629 7SAYGDEF2N King Duvall WA 98019 2022 TESLA MODEL Y Battery Electric Vehicle (BEV) Eligibility unknown as battery range has not b... 0 0 45.0 217955265 POINT (-121.98609 47.74068) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032401
112630 1N4BZ1CP7K San Juan Friday Harbor WA 98250 2019 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 150 0 40.0 103663227 POINT (-123.01648 48.53448) BONNEVILLE POWER ADMINISTRATION||ORCAS POWER &... 53055960301
112631 1FMCU0KZ4N King Vashon WA 98070 2022 FORD ESCAPE Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 34.0 193878387 POINT (-122.4573 47.44929) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033027702
112632 KNDCD3LD4J King Covington WA 98042 2018 KIA NIRO Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 47.0 125039043 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032007
112633 YV4BR0CL8N King Covington WA 98042 2022 VOLVO XC90 Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 18 0 47.0 194673692 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032005
In [60]:
df.columns
Out[60]:
Index(['VIN (1-10)', 'County', 'City', 'State', 'Postal Code', 'Model Year',
       'Make', 'Model', 'Electric Vehicle Type',
       'Clean Alternative Fuel Vehicle (CAFV) Eligibility', 'Electric Range',
       'Base MSRP', 'Legislative District', 'DOL Vehicle ID',
       'Vehicle Location', 'Electric Utility', '2020 Census Tract'],
      dtype='object')

information about the columns in dataset¶

In [8]:
df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 112634 entries, 0 to 112633
Data columns (total 17 columns):
 #   Column                                             Non-Null Count   Dtype  
---  ------                                             --------------   -----  
 0   VIN (1-10)                                         112634 non-null  object 
 1   County                                             112634 non-null  object 
 2   City                                               112634 non-null  object 
 3   State                                              112634 non-null  object 
 4   Postal Code                                        112634 non-null  int64  
 5   Model Year                                         112634 non-null  int64  
 6   Make                                               112634 non-null  object 
 7   Model                                              112614 non-null  object 
 8   Electric Vehicle Type                              112634 non-null  object 
 9   Clean Alternative Fuel Vehicle (CAFV) Eligibility  112634 non-null  object 
 10  Electric Range                                     112634 non-null  int64  
 11  Base MSRP                                          112634 non-null  int64  
 12  Legislative District                               112348 non-null  float64
 13  DOL Vehicle ID                                     112634 non-null  int64  
 14  Vehicle Location                                   112610 non-null  object 
 15  Electric Utility                                   112191 non-null  object 
 16  2020 Census Tract                                  112634 non-null  int64  
dtypes: float64(1), int64(6), object(10)
memory usage: 14.6+ MB
In [9]:
df.nunique().sort_values()
Out[9]:
Electric Vehicle Type                                     2
Clean Alternative Fuel Vehicle (CAFV) Eligibility         3
Model Year                                               20
Base MSRP                                                30
Make                                                     34
State                                                    45
Legislative District                                     49
Electric Utility                                         73
Electric Range                                          101
Model                                                   114
County                                                  165
City                                                    629
Vehicle Location                                        758
Postal Code                                             773
2020 Census Tract                                      2026
VIN (1-10)                                             7548
DOL Vehicle ID                                       112634
dtype: int64
In [10]:
df.describe().T
Out[10]:
count mean std min 25% 50% 75% max
Postal Code 112634.0 9.815623e+04 2.648733e+03 1.730000e+03 9.805200e+04 9.811900e+04 9.837000e+04 9.970100e+04
Model Year 112634.0 2.019003e+03 2.892364e+00 1.997000e+03 2.017000e+03 2.020000e+03 2.022000e+03 2.023000e+03
Electric Range 112634.0 8.781299e+01 1.023342e+02 0.000000e+00 0.000000e+00 3.200000e+01 2.080000e+02 3.370000e+02
Base MSRP 112634.0 1.793440e+03 1.078375e+04 0.000000e+00 0.000000e+00 0.000000e+00 0.000000e+00 8.450000e+05
Legislative District 112348.0 2.980560e+01 1.470055e+01 1.000000e+00 1.800000e+01 3.400000e+01 4.300000e+01 4.900000e+01
DOL Vehicle ID 112634.0 1.994567e+08 9.398427e+07 4.777000e+03 1.484142e+08 1.923896e+08 2.191899e+08 4.792548e+08
2020 Census Tract 112634.0 5.296650e+10 1.699104e+09 1.101001e+09 5.303301e+10 5.303303e+10 5.305307e+10 5.603300e+10

check number of null values¶

In [61]:
df.isnull().sum()
Out[61]:
VIN (1-10)                                             0
County                                                 0
City                                                   0
State                                                  0
Postal Code                                            0
Model Year                                             0
Make                                                   0
Model                                                 20
Electric Vehicle Type                                  0
Clean Alternative Fuel Vehicle (CAFV) Eligibility      0
Electric Range                                         0
Base MSRP                                              0
Legislative District                                 286
DOL Vehicle ID                                         0
Vehicle Location                                      24
Electric Utility                                     443
2020 Census Tract                                      0
dtype: int64
In [119]:
from pandas_profiling import ProfileReport
In [120]:
profile = ProfileReport(df, title="Housing Price Dataset")
In [121]:
profile
Summarize dataset:   0%|          | 0/5 [00:00<?, ?it/s]
Generate report structure:   0%|          | 0/1 [00:00<?, ?it/s]
Render HTML:   0%|          | 0/1 [00:00<?, ?it/s]
Out[121]:

In [62]:
df.replace("",np.nan)
Out[62]:
VIN (1-10) County City State Postal Code Model Year Make Model Electric Vehicle Type Clean Alternative Fuel Vehicle (CAFV) Eligibility Electric Range Base MSRP Legislative District DOL Vehicle ID Vehicle Location Electric Utility 2020 Census Tract
0 JTMEB3FV6N Monroe Key West FL 33040 2022 TOYOTA RAV4 PRIME Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 42 0 NaN 198968248 POINT (-81.80023 24.5545) NaN 12087972100
1 1G1RD6E45D Clark Laughlin NV 89029 2013 CHEVROLET VOLT Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 NaN 5204412 POINT (-114.57245 35.16815) NaN 32003005702
2 JN1AZ0CP8B Yakima Yakima WA 98901 2011 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 73 0 15.0 218972519 POINT (-120.50721 46.60448) PACIFICORP 53077001602
3 1G1FW6S08H Skagit Concrete WA 98237 2017 CHEVROLET BOLT EV Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 238 0 39.0 186750406 POINT (-121.7515 48.53892) PUGET SOUND ENERGY INC 53057951101
4 3FA6P0SU1K Snohomish Everett WA 98201 2019 FORD FUSION Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 38.0 2006714 POINT (-122.20596 47.97659) PUGET SOUND ENERGY INC 53061041500
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
112629 7SAYGDEF2N King Duvall WA 98019 2022 TESLA MODEL Y Battery Electric Vehicle (BEV) Eligibility unknown as battery range has not b... 0 0 45.0 217955265 POINT (-121.98609 47.74068) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032401
112630 1N4BZ1CP7K San Juan Friday Harbor WA 98250 2019 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 150 0 40.0 103663227 POINT (-123.01648 48.53448) BONNEVILLE POWER ADMINISTRATION||ORCAS POWER &... 53055960301
112631 1FMCU0KZ4N King Vashon WA 98070 2022 FORD ESCAPE Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 34.0 193878387 POINT (-122.4573 47.44929) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033027702
112632 KNDCD3LD4J King Covington WA 98042 2018 KIA NIRO Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 47.0 125039043 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032007
112633 YV4BR0CL8N King Covington WA 98042 2022 VOLVO XC90 Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 18 0 47.0 194673692 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032005

112634 rows × 17 columns

In [63]:
df=df.dropna(axis='index',how='any')
df
Out[63]:
VIN (1-10) County City State Postal Code Model Year Make Model Electric Vehicle Type Clean Alternative Fuel Vehicle (CAFV) Eligibility Electric Range Base MSRP Legislative District DOL Vehicle ID Vehicle Location Electric Utility 2020 Census Tract
2 JN1AZ0CP8B Yakima Yakima WA 98901 2011 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 73 0 15.0 218972519 POINT (-120.50721 46.60448) PACIFICORP 53077001602
3 1G1FW6S08H Skagit Concrete WA 98237 2017 CHEVROLET BOLT EV Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 238 0 39.0 186750406 POINT (-121.7515 48.53892) PUGET SOUND ENERGY INC 53057951101
4 3FA6P0SU1K Snohomish Everett WA 98201 2019 FORD FUSION Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 38.0 2006714 POINT (-122.20596 47.97659) PUGET SOUND ENERGY INC 53061041500
5 5YJ3E1EB5J Snohomish Bothell WA 98021 2018 TESLA MODEL 3 Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 215 0 1.0 475635324 POINT (-122.18384 47.8031) PUGET SOUND ENERGY INC 53061051916
6 1N4AZ0CP4D Snohomish Everett WA 98203 2013 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 75 0 38.0 253546023 POINT (-122.23019 47.94949) PUGET SOUND ENERGY INC 53061040900
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
112629 7SAYGDEF2N King Duvall WA 98019 2022 TESLA MODEL Y Battery Electric Vehicle (BEV) Eligibility unknown as battery range has not b... 0 0 45.0 217955265 POINT (-121.98609 47.74068) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032401
112630 1N4BZ1CP7K San Juan Friday Harbor WA 98250 2019 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 150 0 40.0 103663227 POINT (-123.01648 48.53448) BONNEVILLE POWER ADMINISTRATION||ORCAS POWER &... 53055960301
112631 1FMCU0KZ4N King Vashon WA 98070 2022 FORD ESCAPE Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 34.0 193878387 POINT (-122.4573 47.44929) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033027702
112632 KNDCD3LD4J King Covington WA 98042 2018 KIA NIRO Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 47.0 125039043 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032007
112633 YV4BR0CL8N King Covington WA 98042 2022 VOLVO XC90 Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 18 0 47.0 194673692 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032005

112152 rows × 17 columns

In [64]:
df.isna().sum()
Out[64]:
VIN (1-10)                                           0
County                                               0
City                                                 0
State                                                0
Postal Code                                          0
Model Year                                           0
Make                                                 0
Model                                                0
Electric Vehicle Type                                0
Clean Alternative Fuel Vehicle (CAFV) Eligibility    0
Electric Range                                       0
Base MSRP                                            0
Legislative District                                 0
DOL Vehicle ID                                       0
Vehicle Location                                     0
Electric Utility                                     0
2020 Census Tract                                    0
dtype: int64
In [15]:
df=df.drop_duplicates()
In [16]:
df
Out[16]:
VIN (1-10) County City State Postal Code Model Year Make Model Electric Vehicle Type Clean Alternative Fuel Vehicle (CAFV) Eligibility Electric Range Base MSRP Legislative District DOL Vehicle ID Vehicle Location Electric Utility 2020 Census Tract
2 JN1AZ0CP8B Yakima Yakima WA 98901 2011 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 73 0 15.0 218972519 POINT (-120.50721 46.60448) PACIFICORP 53077001602
3 1G1FW6S08H Skagit Concrete WA 98237 2017 CHEVROLET BOLT EV Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 238 0 39.0 186750406 POINT (-121.7515 48.53892) PUGET SOUND ENERGY INC 53057951101
4 3FA6P0SU1K Snohomish Everett WA 98201 2019 FORD FUSION Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 38.0 2006714 POINT (-122.20596 47.97659) PUGET SOUND ENERGY INC 53061041500
5 5YJ3E1EB5J Snohomish Bothell WA 98021 2018 TESLA MODEL 3 Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 215 0 1.0 475635324 POINT (-122.18384 47.8031) PUGET SOUND ENERGY INC 53061051916
6 1N4AZ0CP4D Snohomish Everett WA 98203 2013 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 75 0 38.0 253546023 POINT (-122.23019 47.94949) PUGET SOUND ENERGY INC 53061040900
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
112629 7SAYGDEF2N King Duvall WA 98019 2022 TESLA MODEL Y Battery Electric Vehicle (BEV) Eligibility unknown as battery range has not b... 0 0 45.0 217955265 POINT (-121.98609 47.74068) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032401
112630 1N4BZ1CP7K San Juan Friday Harbor WA 98250 2019 NISSAN LEAF Battery Electric Vehicle (BEV) Clean Alternative Fuel Vehicle Eligible 150 0 40.0 103663227 POINT (-123.01648 48.53448) BONNEVILLE POWER ADMINISTRATION||ORCAS POWER &... 53055960301
112631 1FMCU0KZ4N King Vashon WA 98070 2022 FORD ESCAPE Plug-in Hybrid Electric Vehicle (PHEV) Clean Alternative Fuel Vehicle Eligible 38 0 34.0 193878387 POINT (-122.4573 47.44929) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033027702
112632 KNDCD3LD4J King Covington WA 98042 2018 KIA NIRO Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 26 0 47.0 125039043 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032007
112633 YV4BR0CL8N King Covington WA 98042 2022 VOLVO XC90 Plug-in Hybrid Electric Vehicle (PHEV) Not eligible due to low battery range 18 0 47.0 194673692 POINT (-122.09124 47.33778) PUGET SOUND ENERGY INC||CITY OF TACOMA - (WA) 53033032005

112152 rows × 17 columns

In [87]:
from pandas_profiling import ProfileReport
In [88]:
profile = ProfileReport(df, title="ELECTRIC VEHICLE DATASET")
In [89]:
profile
Summarize dataset:   0%|          | 0/5 [00:00<?, ?it/s]
Generate report structure:   0%|          | 0/1 [00:00<?, ?it/s]
Render HTML:   0%|          | 0/1 [00:00<?, ?it/s]
Out[89]:

Data visualization¶

UNIVARIATE ANALYSIS¶

In [17]:
corr=df.corr()
sns.heatmap(corr,annot=True)
Out[17]:
<AxesSubplot:>
In [21]:
b = px.violin(t,x="Electric Range")
b.show()

BI-VARIATE ANALYSIS¶

In [18]:
t=df.groupby('Make').count().reset_index()
In [19]:
a = px.bar(t,x='Make',y='VIN (1-10)',color="Make",title="Count of Electric Vehiclesmade by each Company")
In [20]:
a.show()

Observation : From the Above Figure We can say That TESLa Company is Having more number of elctric vehicles¶

In [22]:
t1=df.groupby('County').count().reset_index()
In [23]:
a = px.bar(t1,x='County',y='VIN (1-10)',color="County",title="Number of Cars in Each Country")
a.show()

OBSERVATION - King Country has more Electric Vehicles¶

In [24]:
Models = df.groupby('Model').count().sort_values(by='City',ascending=False)['City'].index
values = df.groupby('Model').count().sort_values(by='City',ascending=False)['City'].values
In [25]:
t2 = px.bar(x=list(Models)[:10],y=values[:10])

t2.show()

OBSERVATION -- MODEL3 has manufactured more Electric Cars¶

In [86]:
fig = px.scatter_matrix(df,
    dimensions=["County","Model Year","Make","Electric Range"],
    color="Make")
fig.show()
In [27]:
Vehicle_type = list(df.groupby('Electric Vehicle Type').count()['County'].index)
values = df.groupby('Electric Vehicle Type').count()['County'].values
In [28]:
fig1 = px.pie(names=Vehicle_type,values=values,height=400)
fig1.show()

OBSERVATION --Plug-in hybrid Electric Vehicles are more than Battery Electric Vehicles¶

TASK-2¶

In [33]:
states = list(df.groupby('State').count().sort_values(by='City',ascending=False)['City'].index)
values = df.groupby('State').count().sort_values(by='City',ascending=False)['City'].values
In [34]:
data = pd.DataFrame(df.groupby('State').count().sort_values(by='City',ascending=False)['City'])
data = data.reset_index()
data.columns = ['State','Count']
In [35]:
fig = px.choropleth(data,
                    locations='State', 
                    locationmode="USA-states", 
                    color='Count',
                    color_continuous_scale="greens", 
                    scope="usa")

fig.show()

Observation From the above Choropleth we can say that all of the companies are in WA state¶

TASK 3¶

In [41]:
df1 = df[['Model', 'Model Year']]
In [48]:
df['Model'].unique()
Out[48]:
array(['LEAF', 'BOLT EV', 'FUSION', 'MODEL 3', 'SOUL', 'Q5 E', 'MODEL X',
       'VOLT', 'X5', '530E', 'TAYCAN', 'X3', 'A3', 'SOUL EV', 'C-MAX',
       '500', 'MODEL S', 'F-150', 'CT6', 'I3', 'MODEL Y', 'NIRO',
       'OUTLANDER', 'PACIFICA', 'R1T', 'CLARITY', 'KONA ELECTRIC', 'XC40',
       'ID.4', 'PRIUS PLUG-IN', 'MUSTANG MACH-E', 'EQB-CLASS',
       'RAV4 PRIME', 'E-GOLF', 'PRIUS PRIME', 'C40', 'SORENTO', 'XC60',
       'CAYENNE', 'WRANGLER', 'COUNTRYMAN', 'S60', 'EV6',
       'FORTWO ELECTRIC DRIVE', 'GRAND CHEROKEE', '330E', 'CROSSTREK',
       'IONIQ 5', 'IONIQ', 'E-TRON', 'ROADSTER', 'KONA', 'XC90', 'SPARK',
       'PS2', 'A7', 'HARDTOP', 'ESCAPE', 'LUCID AIR', 'E-TRON SPORTBACK',
       'Q5', 'RAV4', 'AVIATOR', 'E-TRON GT', 'EDV', 'IX', 'FORTWO',
       'I-PACE', 'SANTA FE', 'B-CLASS', 'KARMA', 'I4', 'OPTIMA',
       'GLC-CLASS', 'Q4', 'SONATA', 'EQ FORTWO', 'FOCUS',
       'RANGE ROVER SPORT', 'TRANSIT', 'PANAMERA', 'I8', 'BOLT EUV',
       'CORSAIR', 'ELR', 'GLE-CLASS', 'V60', 'EQS-CLASS SEDAN', 'R1S',
       'I-MIEV', 'NX', '740E', 'SPORTAGE', 'C-CLASS', 'S-CLASS', 'CITY',
       'S90', 'TUCSON', 'GV60', 'EQS-CLASS SUV', 'A8 E', 'RANGE ROVER',
       'RS E-TRON GT', 'RANGER', 'BENTAYGA', '745E',
       'TRANSIT CONNECT ELECTRIC', 'ACCORD', 'S-10 PICKUP', 'SOLTERRA',
       'G80', '918', 'FLYING SPUR', '745LE'], dtype=object)
In [49]:
t1=df1.groupby('Model Year').count().reset_index()
t1
Out[49]:
Model Year Model
0 1997 1
1 1998 1
2 1999 3
3 2000 10
4 2002 2
5 2008 23
6 2010 24
7 2011 835
8 2012 1695
9 2013 4669
10 2014 3665
11 2015 4918
12 2016 5709
13 2017 8598
14 2018 14190
15 2019 10216
16 2020 10998
17 2021 18277
18 2022 26455
19 2023 1863
In [71]:
df2=pd.crosstab(df1['Model'],[df1['Model Year']],rownames=["Model"],colnames=['Model Year'])
In [74]:
df2.fillna(0, inplace=True)
df2.sort_values(list(df2.columns),inplace=True)
df2 = df2.sort_index()
In [75]:
df2
Out[75]:
Model Year 1997 1998 1999 2000 2002 2008 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023
Model
330E 0 0 0 0 0 0 0 0 0 0 0 0 10 95 76 0 0 64 54 0
500 0 0 0 0 0 0 0 0 0 106 97 242 147 166 53 9 0 0 0 0
530E 0 0 0 0 0 0 0 0 0 0 0 0 0 0 202 75 3 18 25 0
740E 0 0 0 0 0 0 0 0 0 0 0 0 0 7 18 4 0 0 0 0
745E 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
X3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 80 212 0 0
X5 0 0 0 0 0 0 0 0 0 0 0 0 169 175 181 0 0 300 577 0
XC40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 245 249 1
XC60 0 0 0 0 0 0 0 0 0 0 0 0 0 0 125 107 87 143 235 0
XC90 0 0 0 0 0 0 0 0 0 0 0 0 112 115 82 70 59 155 224 0

114 rows × 20 columns

In [77]:
df2.iloc[:, 0:-1] = df2.iloc[:, 0:-1].cumsum()
In [78]:
df2.head()
Out[78]:
Model Year 1997 1998 1999 2000 2002 2008 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023
Model
330E 0 0 0 0 0 0 0 0 0 0 0 0 10 95 76 0 0 64 54 0
500 0 0 0 0 0 0 0 0 0 106 97 242 157 261 129 9 0 64 54 0
530E 0 0 0 0 0 0 0 0 0 106 97 242 157 261 331 84 3 82 79 0
740E 0 0 0 0 0 0 0 0 0 106 97 242 157 268 349 88 3 82 79 0
745E 0 0 0 0 0 0 0 0 0 106 97 242 157 268 349 88 10 82 79 0
In [80]:
top_prem_clubs = set()

for index, row in df2.iterrows():
    top_prem_clubs |= set(row[row > 0].sort_values(ascending=False).head(6).index)

df2 = df2[top_prem_clubs]
In [81]:
import bar_chart_race as bcr
In [85]:
bcr.bar_chart_race(df = df2, 
                   n_bars = 6, 
                   sort='desc',
                   title='Premier League Clubs Points Since 1992',
                   filename = 'hack.mp4')
c:\users\gsind\appdata\local\programs\python\python37\lib\site-packages\bar_chart_race\_make_chart.py:286: UserWarning:

FixedFormatter should only be used together with FixedLocator

c:\users\gsind\appdata\local\programs\python\python37\lib\site-packages\bar_chart_race\_make_chart.py:287: UserWarning:

FixedFormatter should only be used together with FixedLocator

MovieWriter imagemagick unavailable; using Pillow instead.